var LRUCache = function(capacity) {
    this.data = {}
    this.keyArr = []; // 最新的key
    this.max = capacity;
};


LRUCache.prototype.get = function(key) {
    const index = this.keyArr.indexOf(key); // 查找key的索引
    if(index!== -1){ // 存
      this.keyArr.splice(index,1); // 从数组中删除
      this.keyArr.unshift(key); // 放到数组前面
      return this.data[key]; // 返回值
    } 
    return -1;
  
};


LRUCache.prototype.put = function(key, value) {
    const index = this.keyArr.indexOf(key);
    if(index !== -1){ // 存在
      this.data[key] = value; // 更新值
      this.keyArr.splice(index,1); // 从数组中删除
      this.keyArr.unshift(key); // 放到数组前面
    } else{
        this.data[key] = value; // 不存在
        this.keyArr.unshift(key); // 放到数组前面
        
    }
    if(this.keyArr.length > this.max){
        const oldestKey = this.keyArr.pop(); // 删除最后一个
      
    }



};



let head ={
    val:0,
    next:{
        val:1,
        next:{
            val:2,
            next:null
        }
    }
}

let map = {
    a:1,
    b:2,
    c:3
}

delete map[1]
